﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Kryptonalysis.Rank
{
    /// <summary>
    /// List of LetterRanks in the german lenguage.
    /// </summary>
    public class GermanLetterRanks : LetterRanks
    {
        /// <summary>
        /// Fills this instance.
        /// </summary>
        protected override void Fill()
        {
            Add(new LetterRank(1, 'E'));
            Add(new LetterRank(2, 'N'));
            Add(new LetterRank(3, 'I'));
            Add(new LetterRank(4, 'S'));
            Add(new LetterRank(5, 'R'));
            Add(new LetterRank(6, 'A'));
            Add(new LetterRank(7, 'T'));
            Add(new LetterRank(8, 'D'));
            Add(new LetterRank(9, 'H'));
            Add(new LetterRank(10, 'U'));
            Add(new LetterRank(11, 'L'));
            Add(new LetterRank(12, 'C'));
            Add(new LetterRank(13, 'G'));
            Add(new LetterRank(14, 'M'));
            Add(new LetterRank(15, 'O'));
            Add(new LetterRank(16, 'B'));
            Add(new LetterRank(17, 'W'));
            Add(new LetterRank(18, 'F'));
            Add(new LetterRank(19, 'K'));
            Add(new LetterRank(20, 'Z'));
            Add(new LetterRank(21, 'P'));
            Add(new LetterRank(22, 'V'));
            //Add(new LetterFrequency(23, 'ß'));
            Add(new LetterRank(23, 'J'));
            Add(new LetterRank(24, 'Y'));
            Add(new LetterRank(25, 'X'));
            Add(new LetterRank(26, 'Q'));
        }


        /// <summary>
        /// Property to get the language.
        /// </summary>
        /// <value>The language.</value>
        public override string Language
        {
            get { return "German"; }
        }
    }
}
